package com.mes.cloud.dao;

import com.mes.cloud.dto.BmeBcProcessDTO;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
* 流程配置
* @author wxm
* @Time 2020-4-13
*/
@Mapper
@Repository
public interface BmeBcProcessDAO {

    /**
    * 根据条件获取流程配置列表
    * @param condition
    * @return
    * @throws Exception
    */
    List<BmeBcProcessDTO> findList(Map<Object, Object> condition);


    /**
    * 获取流程配置的最大记录数
    * @param condition
    * @return
    * @throws Exception
    */
    long getCount(Map<Object, Object> condition);

    /**
    * 新增流程配置
    * @param bmeBcProcessDTO 流程配置对象
    * @return
    */
    long insert(BmeBcProcessDTO bmeBcProcessDTO);

    /**
    * 更新流程配置
    * @param bmeBcProcessDTO 流程配置对象
    * @return
    */
    long update(BmeBcProcessDTO bmeBcProcessDTO);

    /**
    * 删除流程配置
    * @param id  流程配置标识
    * @return
    */
    long delete(Integer id);

    /**
    * 根据流程配置标识获取流程配置
    * @param id  流程配置标识
    * @return
    */
    BmeBcProcessDTO get(Integer id);

    BmeBcProcessDTO getByCode(String code);

    long enable(Map<Object, Object> map);
}
